AddressInfo(sta_info 192.168.15.1/24 00:0b:6b:2f:f0:f5,bssid_info 0:1:1:1:1:1);

wireless_info::WirelessInfo(SSID "",BSSID bssid_info,CHANNEL 4);

control::ControlSocket("TCP",6777);

chatter::ChatterSocket("TCP",6778);

wifi_cl::Classifier(0/08%0c 1/00%03,	//is 802.11 node data frame
		    0/04%0c,		//is control frame
		    );

dev_net_cl::Classifier(	12/0806 20/0001,	//ARP requests
			12/0806 20/0002,	//ARP replies
			12/0800,		//IP packets
			-);
			
host_net_cl::Classifier(12/0806 20/0001,	
			12/0800,	//IP packets
			);
			
dev_eth_cl::HostEtherFilter(sta_info);

host_eth_cl::HostEtherFilter(sta_info);

dev_arp_querier::ARPQuerier(sta_info);

dev_arpre::ARPResponder(192.168.15.1 00:0b:6b:2f:f0:f5);


wifi_encap::WifiEncap(0x00,WIRELESS_INFO wireless_info)-> PrintWifi(befor_frag)
//->WifiFragment->PrintWifi(after_frag)
->q::Queue(1000)
->set_rate::SetTXRate(22)
->Prism2Encap
->ToDevice(ath0)-> Prism2Decap ->PrintWifi("send to dev")->Discard;

FromHost(sta,sta_info,ETHER sta_info) //-> Print
->host_net_cl
->ARPResponder(0/0 00:1b:24:d3:bf:bc)
->ToHost(sta);

host_net_cl [1] -> host_eth_cl -> Discard;	//packets to this host

host_eth_cl [1] -> Strip(14) -> Print(befor_arp)-> dev_arp_querier -> Print(after_arp)-> wifi_encap;	//packets to other host

dev_arp_querier [1] -> wifi_encap;

//host_net_cl [2] -> Discard;

from_dev::FromDevice(ath0)
-> Prism2Decap
-> FilterPhyErr
-> FilterTX		//filter outgoing packets
-> WifiDupeFilter
-> wifi_cl
-> Classifier(16/000101010101)->PrintWifi
//-> WifiDefrag
-> WifiDecap
-> dev_eth_cl
-> dev_net_cl
-> dev_arpre
-> wifi_encap;

wifi_cl [1] -> Classifier(4/000b6b2ff0f5) ->PrintWifi -> Discard;

dev_eth_cl [1] -> Discard;	//packets to other dev

dev_net_cl [1] -> [1] dev_arp_querier;

dev_net_cl [2] -> Print(ToHost)->ToHost(sta);

dev_net_cl [3] -> Discard;

























